package com.buercorp.wangyu.Stream;

import java.util.*;
import java.util.stream.Stream;

/**
 * 得到Stream流
 * @author 忆白
 */
public class Test2 {
    public static void main(String[] args) {
        // 单列集合获取Stream流
        // 创建单列集合
        ArrayList<Object> list = new ArrayList<>();
        Collections.addAll(list, "1", "2", "3", "4", "5");
        list.stream().forEach(System.out::println); // 1 2 3 4 5

        // 双列集合获取Stream流
        // 创建双列集合
        HashMap<String, Integer> hm = new HashMap<>();
        hm.put("1", 1);
        hm.put("2", 2);
        // 第一种获取Stream流
        hm.keySet().stream().forEach(System.out::println); // 1 2
        // 第二种获取Stream流
        hm.entrySet().stream().forEach(System.out::println); // 1=1 2=2

        // 数组
        int[] arr = {1, 2, 3, 4, 5};
        Arrays.stream(arr).forEach(System.out::println); // 1 2 3 4 5

        // 一堆零散数据
        // stream.of()细节：
        //          方法的形参是一个可变的参数，可以传入多个参数，也可以传入一个数组
        //          但是数组必须是引用数据类型，不能传入基本数据类型
        Stream.of("1", "2", "3", "4", "5").forEach(System.out::println); // 1 2 3 4 5
        Stream.of(1, 2, 3, 4, 5).forEach(System.out::println); // 1 2 3 4 5
    }
}
